Taming E ects with Monadic Typing 1
نویسنده
چکیده
The familiar Hindley-Milner type system of the ML language family is extended with monad annotations to account for possible side e ects of expression evaluation. This also allows e ects to be e ectively encapsulated by lexical scopes, with enforcement provided by type checking. A type-and-e ects analysis supports type inference. Type soundness and completeness theorems establish the coherence of monadic type inference with the reference semantics of a small ML-style language.
منابع مشابه
Taming E ects with MonadicTyping 1 Richard
The familiar Hindley-Milner type system of the ML language family is extended with monad annotations to account for possible side eeects of expression evaluation. This also allows eeects to be eeectively encapsulated by lexical scopes, with enforcement provided by type checking. A type-and-eeects analysis supports type inference. Type soundness and completeness theorems establish the coherence ...
متن کاملOn the Expressive Power of User - Defined E ects
We compare the expressive power of three programming abstractions for user-de ned computational e ects: Bauer and Pretnar’s e ect handlers, Filinski’s monadic re ection, and delimited control without answer-type-modi cation. This comparison allows a precise discussion about the relative expressiveness of each programming abstraction. It also demonstrates the sensitivity of the relative expressi...
متن کاملControlling E ects
Many computational e ects, such as exceptions, state, or nondeterminism, can be conveniently speci ed in terms of monads. We investigate a technique for uniformly adding arbitrary such e ects to ML-like languages, without requiring any structural changes to the programs themselves. Instead, we use monadic re ection, a new language construct for explicitly converting back and forth between repre...
متن کاملControlling Eeects Thesis Committee
Many computational e ects, such as exceptions, state, or nondeterminism, can be conveniently speci ed in terms of monads. We investigate a technique for uniformly adding arbitrary such e ects to ML-like languages, without requiring any structural changes to the programs themselves. Instead, we use monadic re ection, a new language construct for explicitly converting back and forth between repre...
متن کاملEffect capabilities for Haskell: Taming effect interference in monadic programming
Article history: Received 13 March 2015 Received in revised form 19 November 2015 Accepted 22 November 2015 Available online 28 November 2015
متن کامل